home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / Kubuntu 8.10 / kubuntu-8.10-desktop-i386.iso / casper / filesystem.squashfs / var / lib / dpkg / info / kdm.postinst < prev    next >
Text File  |  2008-10-24  |  3KB  |  113 lines

  1. #! /bin/sh
  2.  
  3. set -e
  4.  
  5. # source debconf library
  6. . /usr/share/debconf/confmodule
  7.  
  8. # debconf is not a registry, so we only fiddle with the default file if it
  9. # does not exist
  10. DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
  11. if [ ! -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
  12.   DEFAULT_DISPLAY_MANAGER=
  13.   if db_get shared/default-x-display-manager; then
  14.     DEFAULT_DISPLAY_MANAGER="$RET"
  15.   fi
  16.   if [ -n "$DEFAULT_DISPLAY_MANAGER" ]; then
  17.     DAEMON_NAME=
  18.     if db_get "$DEFAULT_DISPLAY_MANAGER"/daemon_name; then
  19.       DAEMON_NAME="$RET"
  20.     fi
  21.     if [ ! -n "$DAEMON_NAME" ]; then
  22.       # if we were unable to determine the name of the selected daemon (for
  23.       # instance, if the selected default display manager doesn't provide a
  24.       # daemon_name question), guess
  25.       DAEMON_NAME=$(which "$DEFAULT_DISPLAY_MANAGER" 2>/dev/null)
  26.       if [ ! -n "$DAEMON_NAME" ]; then
  27.         echo .
  28.         # FIXME - redo this part uses shell-lib.sh from xfree86
  29.         #warn "unable to determine path to default X display manager" \
  30.         #     "$DEFAULT_DISPLAY_MANAGER; not updating" \
  31.         #     "$DEFAULT_DISPLAY_MANAGER_FILE"
  32.       fi
  33.     fi
  34.     if [ -n "$DAEMON_NAME" ]; then
  35.       # FIXME - redo this part uses shell-lib.sh from xfree86
  36.       #observe "committing change of default X display manager"
  37.       echo "$DAEMON_NAME" > "$DEFAULT_DISPLAY_MANAGER_FILE"
  38.     fi
  39.   fi
  40. fi
  41.  
  42. # remove the displaced old default display manager file if it exists
  43. if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp" ]; then
  44.   rm "$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp"
  45. fi
  46.  
  47. # restarting the daemon may cause output to stdout
  48. db_stop
  49.  
  50. # don't start kdm if we are upgrading without stopping it
  51. NOSTART=
  52. if [ -e /var/run/kdm.upgrade ]; then
  53.   NOSTART=yes
  54. fi
  55. # or if we're currently in X on the display it attempts to manage by default
  56. for HOST in "" \
  57.             "localhost" \
  58.             "$(hostname 2> /dev/null)" \
  59.             "$(hostname -f 2> /dev/null)"; do
  60.   if echo "$DISPLAY" | grep -q "^$HOST:0.*"; then
  61.     NOSTART=yes
  62.     break
  63.   fi
  64. done
  65. # or if it's already running
  66. if start-stop-daemon --stop --quiet --signal 0 --pid /var/run/kdm.pid --name kdm; then
  67.   NOSTART=yes
  68. fi
  69. # or if the options file says not to
  70. if ! grep -qs ^restart-on-upgrade /etc/kde4/kdm/kdm.options; then
  71.   NOSTART=yes
  72. fi
  73.  
  74. case "$1" in
  75.  
  76.   configure)
  77.   ;;
  78.  
  79.   abort-upgrade|abort-remove|abort-deconfigure)
  80.   ;;
  81.  
  82.   *)
  83.   echo "postinst called with unknown argument \`$1'" >&2
  84.   exit 1
  85.   ;;
  86.  
  87. esac
  88.  
  89. if [ "$1" = "configure" ] && dpkg --compare-versions "$2" lt-nl "4:4.1.0-0ubuntu9"; then
  90.   # since 4:4.1.0-0ubuntu9, KDM isn't started from S99 anymore
  91.   # we also didn't migrate from KDE 3 S13 yet
  92.   if [ -e /etc/rc2.d/S99kdm ] || [ -e /etc/rc2.d/S13kdm ]; then
  93.     update-rc.d -f kdm remove >/dev/null
  94.     update-rc.d kdm defaults 30 01
  95.   fi
  96. fi
  97.  
  98. if [ -x "/etc/init.d/kdm" ]; then
  99.   update-rc.d kdm defaults 30 01 >/dev/null 2>&1
  100. fi
  101.  
  102. if [ -n "$NOSTART" ]; then
  103.   exit 0
  104. else
  105.   if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
  106.     invoke-rc.d kdm start || true
  107.   else
  108.     /etc/init.d/kdm start || true
  109.   fi
  110. fi
  111.  
  112. exit 0
  113.